<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>博客编辑</title>

    <!-- 引入自己写的样式 -->
    <link rel="stylesheet" href="css/conmmon.css">
    <link rel="stylesheet" href="css/blog_edit.css">

    <!-- 引入 editor.md 的依赖 -->
    <link rel="stylesheet" href="editor.md/css/editormd.min.css" />
    <script src="js/jquery.min.js"></script>
    <script src="js/moment.js"></script>
    <script src="editor.md/editormd.js"></script>
</head>

<body>
    <!-- 导航栏 -->
    <div class="nav">
        <img src="img/logo2.jpg" alt="">
        <span class="title">博客系统</span>
        <!-- 用来占据中间位置 -->
        <span class="spacer"></span>
        <a href="blog_list.html">主页</a>
        <a href="blog_edit.html">写博客</a>
        <a href="javascript:onExit()">退出登录</a>
        <!-- <a href="#">注销</a> -->
    </div>



    <!-- 编辑框容器 -->
    <div class="blog-edit-container">
        <!-- 标题编辑区 -->
        <div class="title">
            <input id="title" type="text" placeholder="在这里写下文章标题">
            <button onclick="mysub()">发布文章</button>
        </div>
        <!-- 创建编辑器标签 -->
        <div id="editorDiv">
            <textarea id="editor-markdown" style="display:none;"></textarea>
        </div>
    </div>

    
    
    <script>
        var aid;
        var updatetime;
        function showArt() {
            aid = getURLParam("id");
            if (aid != null && aid > 0) {
                jQuery.ajax({
                        url:"/art/details",
                        type:"GET",
                        data:{
                            "aid": aid
                        },
                        success: function(body) {
                            if (body.code == 200 && body.data != null) {
                                var art = body.data;
                                // jQuery("#title").text(art.title);
                                // 不设置成text了 设置成val 因为不是input标签了 所以使用val
                                jQuery("#title").val(art.title);
                                initEdit(art.content);
                                editormd = editormd.markdownToHTML("editorDiv", {
                                    markdown: art.content
                                });
                            } else {
                                alert("请求失败，即将返回登录页面");
                            }
                        },
                        error: function(body) {
                            if (body != null && body.status == 401) {
                                alert("未登录");
                                location.href = "/login.html";
                            }
                        }
                    })
            }
        }
        showArt();
    
        // 获取URL中queryString参数
        function getURLParam(key){
            // 通过location.search拿到URL
            var params = location.search;
            // 有query string就进入下一步
            if(params.indexOf("?")>=0){
            //    获得query string
            params = params.substring(params.indexOf("?") + 1);
                //获得键值对集合 
            var paramArr = params.split('&');
                //遍历键值对集合 
            for(var i=0;i<paramArr.length;i++){
                    // 分割键和值
                    var namevalues = paramArr[i].split("=");
                    // key是函数的参数 和参数匹配就返回对应的value
                    if (namevalues[0]==key) {
                        return namevalues[1];
                    }
                }
            } else {
                return "";
            }
        }

        var editor;
        function initEdit(md){
            // 编辑器设置
            editor = editormd("editorDiv", {
                // 这里的尺寸必须在这里设置. 设置样式会被 editormd 自动覆盖掉. 
                width: "100%",
                // 高度 100% 意思是和父元素一样高. 要在父元素的基础上去掉标题编辑区的高度
                height: "calc(100% - 50px)",
                // 编辑器中的初始内容
                markdown: md,
                // 指定 editor.md 依赖的插件路径
                path: "editor.md/lib/",
                saveHTMLToTextarea: true // 
            });
        }
        initEdit("# 在这里写下一篇博客"); // 初始化编译器的值
        // 提交
        function mysub(){
            // alert(editor.getValue()); // 获取值
            // editor.setValue("#123") // 设置值
            var title = jQuery("#title");
            var content = editor.getValue();
            if (title.val() == "") {
                title.focus();
                alert("标题别忘写了欧");
                return false;
            } if (content.val() == "") {
                content.focus();
                alert("正文别忘写了欧");
                return false;
            }
            updatetime = moment().format('YYYY-MM-DD H:mm:ss');
            jQuery.ajax({
                url:"/art/update",
                type:"POST",
                data:{
                    "title":title,
                    "content":content,
                    "aid":aid,
                    "updatetime":updatetime,
                },
                success: function(body) {
                },
                error: function(body) {
                    if (body != null && body.status == 401) {
                        alert("未登录");
                    }
                    alert(JSON.stringify(body)); 
                }
            }) 
        }
    </script>
</body>
<script>
    function onExit() {
        // confirm弹出一个选择框 选择确认就会返回true
        if (confirm("真的要退出么？")) {
            jQuery.ajax({
                url:"/user/logout",
                type:"POST",
                data:{},
                success: function(body) {
                    location.href = "/login.html";
                },
                error: function(body) {
                    if (body != null && body.status == 401) {
                        alert("未登录");
                    }
                    alert(JSON.stringify(body)); 
                }
            }) 
        }
    }
</script>
</html>